package cn.com.qtgl.apis.iam.comp.proxy;

import cn.com.qtgl.apis.iam.comp.IamConfig;
import cn.com.qtgl.apis.iam.model.api.DepartmentApiBody;
import cn.com.qtgl.apis.iam.model.api.PostApiBody;
import cn.com.qtgl.apis.iam.model.api.UserApiBody;
import cn.melonlib.apis.support.annos.ApiModule;
import cn.melonlib.apis.support.annos.ApiParameter;
import cn.melonlib.apis.support.annos.ApiRequest;
import cn.melonlib.objects.maps.JsonMap;

/**
 * IAM用户信息接口代理
 */
@ApiModule(
        value = "iam",
        apiModuleConfig = IamConfig.IAM
)
public interface IamProxy {

    /**
     * 用户数据查询
     * @param filter
     * @return
     */
    @ApiRequest(name = "users")
    public UserApiBody users(@ApiParameter(name = "filter",type = "Filter") JsonMap<JsonMap<Object>> filter);

    /**
     * 岗位信息查询
     * @return
     */
    @ApiRequest
    public PostApiBody posts();

    @ApiRequest
    public DepartmentApiBody departments();

    @ApiRequest
    public DepartmentApiBody departments(@ApiParameter(name = "filter",type = "Filter")JsonMap<JsonMap<Object>> filter);

}
